// pages/report/list/index.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    reports: [],
    loading: false
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad() {
    this.getReportList();
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {
    this.getReportList();
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  },

  // 获取报告列表（使用模拟数据）
  async getReportList() {
    try {
      this.setData({ loading: true });
      
      // 模拟数据
      const mockReports = [
        {
          _id: '1',
          date: '2024-03-21',
          score: 85,
          efficiency: 85,
          deepSleepDuration: '2h15m',
          sleepTime: '23:00',
          wakeTime: '07:15'
        },
        {
          _id: '2',
          date: '2024-03-20',
          score: 75,
          efficiency: 78,
          deepSleepDuration: '1h45m',
          sleepTime: '23:30',
          wakeTime: '07:00'
        },
        {
          _id: '3',
          date: '2024-03-19',
          score: 65,
          efficiency: 70,
          deepSleepDuration: '1h30m',
          sleepTime: '00:00',
          wakeTime: '07:00'
        }
      ];

      // 模拟网络延迟
      await new Promise(resolve => setTimeout(resolve, 500));

      this.setData({
        reports: mockReports
      });
    } catch (error) {
      console.error('获取报告列表失败:', error);
      wx.showToast({
        title: '获取报告列表失败',
        icon: 'none'
      });
    } finally {
      this.setData({ loading: false });
      wx.stopPullDownRefresh();
    }
  },

  // 跳转到报告详情页
  goToDetail(e) {
    const { id } = e.currentTarget.dataset;
    if (!id) {
      console.error('报告ID不存在');
      wx.showToast({
        title: '无法查看详情',
        icon: 'none'
      });
      return;
    }
    
    wx.navigateTo({
      url: `/pages/report/detail/index?id=${id}`,
      fail: (err) => {
        console.error('跳转失败:', err);
        wx.showToast({
          title: '跳转失败',
          icon: 'none'
        });
      }
    });
  }
})